package com.zyf.project.capchain.service;

import com.zyf.project.capchain.listener.result.impl.Result;
import com.zyf.project.capchain.model.User;

/**
 * <h1>微信用户基本信息服务</h1>
 * <p>该服务包括微信登录、用户更新个人信息等，客户端凡涉及用户基本信息的 API，建议调用该服务，不建议调用 {@link com.zyf.project.capchain.service.UserService}</p>
 * @author Zhou Yifan
 */
public interface WxUserInfoService {

    /**
     * 登录认证
     *
     * @param code 小程序传来的 code
     * @return 处理结果
     */
    Result<User> authorizeLogin(String code);

    /**
     * 更新用户信息（如果是新用户，可能需要一些设置）
     *
     * @param user 用户对象
     * @return 处理结果
     */
    Result<User> updateUser(User user);
}
